﻿namespace DingTalk.Corp.Auth.Configurations
{
    /// <summary>
    /// 
    /// </summary>
    public interface IDingTalkCorpAuthConfiguration
    {
        /// <summary>
        /// 详见文档 ---> https://open.dingtalk.com/document/orgapp/obtain-identity-credentials
        /// </summary>
        const string OPEN_AUTH_URI = "https://login.dingtalk.com/oauth2/auth";
        /// <summary>
        /// 详见文档 ---> https://open.dingtalk.com/document/orgapp/scan-qr-code-to-log-on-to-third-party-websites
        /// </summary>
        const string QR_AUTH_URI = "https://oapi.dingtalk.com/connect/qrconnect";
        /// <summary>
        /// 详见文档 ---> 
        /// </summary>
        const string SESSION_URI = "";
        /// <summary>
        /// 详见文档 ---> 
        /// </summary>
        const string USER_INFO_URI = "https://api.dingtalk.com/v1.0/contact/users/me";
        /// <summary>
        /// 详见文档 ---> https://open.dingtalk.com/document/orgapp/obtain-user-token
        /// </summary>
        const string USER_TOKEN_URI = "https://api.dingtalk.com/v1.0/oauth2/userAccessToken";
        /// <summary>
        /// 
        /// </summary>
        const string GET_USER_ID_URI = "https://oapi.dingtalk.com/topapi/user/getbyunionid";
        /// <summary>
        /// 
        /// </summary>
        string OpenAuthUri { get; set; }

        /// <summary>
        /// 
        /// </summary>
        string QrAuthUri { get; set; }

        /// <summary>
        /// 
        /// </summary>
        string SessionUri { get; set; }

        /// <summary>
        /// 
        /// </summary>
        string UserTokenUri { get; set; }

        /// <summary>
        /// 
        /// </summary>
        string UserInfoUri { get; set; }

        /// <summary>
        /// 
        /// </summary>
        string GetUserIdUri { get; set; }
    }
}
